<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>KityMinder Editor - Powered By FEX</title>

    <link href="favicon.ico" type="image/x-icon" rel="shortcut icon">

    <!-- bower:css -->
    <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.css" />
    <link rel="stylesheet" href="bower_components/codemirror/lib/codemirror.css" />
    <link rel="stylesheet" href="bower_components/hotbox/hotbox.css" />
    <!-- <link rel="stylesheet" href="node_modules/kityminder-core/dist/kityminder.core.css" /> -->
    <link rel="stylesheet" href="docs/kityminder-core/kityminder.core.css">
    <link rel="stylesheet" href="bower_components/color-picker/dist/color-picker.css" />
    <link rel="stylesheet" href="bower_components/toastr/toastr.min.css" />
    <!-- endbower -->

    <link rel="stylesheet" href="dist/kityminder.editor.css">

    <style>
        html,
        body {
            margin: 0;
            padding: 0;
            height: 100%;
            overflow: hidden;
        }

        h1.editor-title {
            background: #393F4F;
            color: white;
            margin: 0;
            height: 40px;
            font-size: 14px;
            line-height: 40px;
            font-family: 'Hiragino Sans GB', 'Arial', 'Microsoft Yahei';
            font-weight: normal;
            padding: 0 20px;
        }

        #repository {
            position: absolute;
            top: 0;
            right: 10px;
        }

        #repository path {
            transition: .8s;
            -webkit-transition: .8s;
        }

        #repository:hover path {
            fill: #fc8383;
        }
    </style>
</head>

<body ng-app="kityminderDemo" ng-controller="MainController">
    <!-- <h1 class="editor-title">KityMinder Editorz - Powered By FEX</h1> -->
    <kityminder-editor on-init="initEditor(editor, minder)"></kityminder-editor>
    <div class="modal fade" tabindex="-1" role="dialog" aria-hidden="true" id="initRemoteModal">
        <!-- 参数中有md -->
        <div class="modal-dialog modal-sm" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                    </button>
                    <h5 class="modal-title">加载提示</h5>
                </div>
                <div class="modal-body" style="font-size:16px;">检测到远程数据，要加载吗？</div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">否</button>
                    <button type="button" class="btn btn-success" id="initRemote">是</button>
                </div>
            </div>
        </div>
    </div>
</body>

<!-- bower:js -->
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script>
<script src="bower_components/codemirror/lib/codemirror.js"></script>
<script src="bower_components/codemirror/mode/xml/xml.js"></script>
<script src="bower_components/codemirror/mode/javascript/javascript.js"></script>
<script src="bower_components/codemirror/mode/css/css.js"></script>
<script src="bower_components/codemirror/mode/htmlmixed/htmlmixed.js"></script>
<script src="bower_components/codemirror/mode/markdown/markdown.js"></script>
<script src="bower_components/codemirror/addon/mode/overlay.js"></script>
<script src="bower_components/codemirror/mode/gfm/gfm.js"></script>
<script src="bower_components/angular-ui-codemirror/ui-codemirror.js"></script>
<script src="bower_components/marked/lib/marked.js"></script>
<script src="node_modules/kity/dist/kity.js"></script>
<script src="bower_components/hotbox/hotbox.js"></script>
<script src="bower_components/json-diff/json-diff.js"></script>
<!-- <script src="node_modules/kityminder-core/dist/kityminder.core.js"></script> -->
<script src="docs/kityminder-core/kityminder.core.js"></script>
<script src="bower_components/color-picker/dist/color-picker.js"></script>
<script src="bower_components/seajs/dist/sea.js"></script>
<!-- endbower -->

<script src="ui/kityminder.app.js"></script>
<script src="ui/service/commandBinder.service.js"></script>
<script src="ui/service/config.service.js"></script>
<script src="ui/service/memory.service.js"></script>
<script src="ui/service/lang.zh-cn.service.js"></script>
<script src="ui/service/valueTransfer.service.js"></script>
<script src="ui/service/minder.service.js"></script>
<script src="ui/service/resource.service.js"></script>
<script src="ui/service/revokeDialog.service.js"></script>
<script src="ui/service/server.service.js"></script>
<script src="ui/filter/lang.filter.js"></script>
<script src="ui/dialog/hyperlink/hyperlink.ctrl.js"></script>
<script src="ui/dialog/image/image.ctrl.js"></script>
<script src="ui/dialog/imExportNode/imExportNode.ctrl.js"></script>
<script src="ui/directive/topTab/topTab.directive.js"></script>
<script src="ui/directive/undoRedo/undoRedo.directive.js"></script>
<script src="ui/directive/appendNode/appendNode.directive.js"></script>
<script src="ui/directive/arrange/arrange.directive.js"></script>
<script src="ui/directive/operation/operation.directive.js"></script>
<script src="ui/directive/hyperLink/hyperLink.directive.js"></script>
<script src="ui/directive/imageBtn/imageBtn.directive.js"></script>
<script src="ui/directive/noteBtn/noteBtn.directive.js"></script>
<script src="ui/directive/resourceEditor/resourceEditor.directive.js"></script>
<script src="ui/directive/priorityEditor/priorityEditor.directive.js"></script>
<script src="ui/directive/progressEditor/progressEditor.directive.js"></script>
<script src="ui/directive/noteEditor/noteEditor.directive.js"></script>
<script src="ui/directive/notePreviewer/notePreviewer.directive.js"></script>
<script src="ui/directive/kityminderEditor/kityminderEditor.directive.js"></script>
<script src="ui/directive/templateList/templateList.directive.js"></script>
<script src="ui/directive/themeList/themeList.directive.js"></script>
<script src="ui/directive/layout/layout.directive.js"></script>
<script src="ui/directive/styleOperator/styleOperator.directive.js"></script>
<script src="ui/directive/fontOperator/fontOperator.directive.js"></script>
<script src="ui/directive/expandLevel/expandLevel.directive.js"></script>
<script src="ui/directive/selectAll/selectAll.directive.js"></script>
<script src="ui/directive/colorPanel/colorPanel.directive.js"></script>
<script src="ui/directive/navigator/navigator.directive.js"></script>
<script src="ui/directive/searchBox/searchBox.directive.js"></script>
<script src="ui/directive/searchBtn/searchBtn.directive.js"></script>
<script src="ui/directive/other/other.directive.js"></script>
<script src="bower_components/toastr/toastr.min.js"></script>
<script>
    !function () {
        // window.onbeforeunload = function (e) {
        //     let message = "系统可能不会保存您所做的更改。";
        //     e = e || window.event;
        //     if (e) {
        //         e.returnValue = message;
        //     }
        //     return message;
        // };
        $('#initRemoteModal').on('hidden.bs.modal', function (e) {
            $(this).remove();
        });
        jQuery.extend({
            getQueryVariable: function (name) {
                var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
                var r = window.location.search.substr(1).match(reg);
                if (r != null) return unescape(r[2]);
                return null;
            }
        })
    }();

    angular.module('kityminderDemo', ['kityminderEditor'])
        .controller('MainController', function ($scope) {
            $scope.initEditor = function (editor, minder) {
                window.editor = editor;
                window.minder = minder;
                // minder.remoteLink = "https://cloudlandboy.github.io/myNote/resources/minds/";
                minder.remoteLink = "http://127.0.0.1:5500/docs/";
                toastr.options = {
                    "closeButton": true,
                    "positionClass": "toast-top-center",
                    "newestOnTop": false,
                };
                let link = $.getQueryVariable("md");
                if (link) {
                    if (!/^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/.test(link)) {
                        link = minder.remoteLink + link + ".json";
                    }
                    toastr.info('加载数据中......', '请稍后', {
                        "positionClass": "toast-top-full-width",
                        "closeButton": false,
                        "closeMethod": 'show',
                        "timeOut": 0,
                        "extendedTimeOut": 0,
                    });
                    $.ajax(link, {
                        dataType: 'json',
                        success: function (data) {
                            toastr.remove();
                            $('#initRemoteModal').modal('show');
                            $('#initRemote').one('click', function () {
                                $('#initRemoteModal').modal('hide');
                                try {
                                    minder.importJson(data)
                                    minder.otherScope.viewModel();
                                    minder.isRemote = true;
                                } catch (e) {
                                    toastr.error("出错了，不兼容的json格式！");
                                }
                            })
                        },
                        error: function () {
                            toastr.remove();
                            $('#loading').modal('hide')
                            toastr.error("啊偶！没有请求到数据，请检测请求路径是否正确！");
                        },
                    })
                }
            };
        });
</script>

</html>